package com.xjmall.service;

import com.github.pagehelper.PageInfo;
import com.xjmall.common.ServerResponse;
import com.xjmall.common.ServerResult;
import com.xjmall.pojo.Product;
import com.xjmall.vo.ProductDetailVo;
import com.xjmall.vo.ProductListVo;

import java.util.List;

/**
 * Created by An on 2017/5/17.
 */
public interface IProductService {
    // 保存商品信息
    ServerResult saveOrUpdateProduct(Product product);
    // 修改商品销售状态
    ServerResult setSaleStatus(Integer productId, Integer status);
    // 根据商品id获取商品详情
    ServerResult getManageProductDetail(Integer productId);
    // 商品列表
    ServerResult getProductList(Integer pageNum, Integer pageSize);
    // 根据搜索条件查询商品列表
    ServerResult searchProduct(String productName, Integer productId, Integer pageNum, Integer pageSize);
    // 根据分类id查询商品列表
    ServerResult getProductByCategoryId(Integer categoryId, int pageNum, int pageSize);

    // 根据分类id和关键字查询商品列表
    ServerResponse<PageInfo> getProductByKeywordCategory(String keyword, Integer categoryId, int pageNum, int pageSize, String orderBy);
    // 根据商品id查询商品详情
    ServerResponse<ProductDetailVo> getProductDetail(Integer productId);
    // 查询新品上架的商品列表
    ServerResponse<List<ProductListVo>> selectNewProductList();
    // 查询疯狂热卖的商品列表
    ServerResponse<List<ProductListVo>> selectHotProductList();


}
